export function patch (oldVnode, vnode) {
  // console.log(oldVnode, vnode);
  // vnode => 真实dom
  // 1、创建新DOM
  let el = createEl(vnode);
  // console.log('el===', el);

  // 2、替换 
  // 获取父节点 插入 删除
  let parentEl = oldVnode.parentNode;
  parentEl.insertBefore(el, oldVnode.nextsibling);
  parentEl.removeChild(oldVnode)
  return el;
}

// 创建DOM
function createEl (vnode) {
  let {tag, data, key, children, text} = vnode;

  
  if (typeof tag === 'string') {
    // 标签
    // 创建元素
    vnode.el = document.createElement(tag)
    // 处理子元素
    if (children.length > 0) {
      children.forEach(child => {
        vnode.el.appendChild(createEl(child))
      });
    }
  } else {
    vnode.el = document.createTextNode(text);
  }
  return vnode.el;
}